/*
 * Copyright (C) 2009 2DAI
 *
 * Este programa es Software Libre; usted puede redistribuirlo
 * y/o modificarlo bajo los términos de la "GNU General Public
 * License" como lo publica la "FSF Free Software Foundation",
 * o (a su elección) de cualquier versión posterior.
 *
 * Este programa es distribuido con la esperanza de que le será
 * útil, pero SIN NINGUNA GARANTIA; incluso sin la garantía
 * implícita por el MERCADEO o EJERCICIO DE ALGUN PROPOSITO en
 * particular. Vea la "GNU General Public License" para más
 * detalles.
 *
 * Usted debe haber recibido una copia de la "GNU General Public
 * License" junto con este programa, si no, escriba a la "FSF
 * Free Software Foundation, Inc.", 59 Temple Place - Suite 330,
 * Boston, MA  02111-1307, USA.
 */

/*
 * RecordResultSingle.java
 *
 * Created on 12-feb-2009, 8:56:06
 */
package gui;

import java.awt.Font;
import java.awt.Rectangle;
import javax.swing.ImageIcon;
import javax.swing.JButton;
import javax.swing.JLabel;
import logic.RecordLogic;

/**
 *Author: Alejandro Jaramillo Perez
 * @author 2Dai
 */
public class RecordResultSingle extends javax.swing.JPanel {
    private javax.swing.JLabel JLResultado1;
    private javax.swing.JLabel JLResultado2;
    private javax.swing.JLabel JLResultado3;
    private javax.swing.JLabel JLResultado4;
    private javax.swing.JLabel JLResultado5;
    private javax.swing.JLabel JLResultadoFinal;
    private javax.swing.JLabel JLjugador1;
    private javax.swing.JLabel JLjugador2;
    private javax.swing.JLabel JLletra1;
    private javax.swing.JLabel JLletra2;
    private javax.swing.JLabel JLlicencia1;
    private javax.swing.JLabel JLlicencia2;
    private JButton JBTNmodificar;
    private RecordLogic rl;

    /**Pone las etiquetas para el primer partido*/
    public static final int PRIMERO = 0;
    /**Pone las etiquetas para el segundo partido*/
    public static final int SEGUNDO = 1;
    /**Pone las etiquetas para el tercero partido*/
    public static final int TERCERO = 2;
    /**Pone las etiquetas para el quinto partido*/
    public static final int QUINTO = 4;
    /**Pone las etiquetas para el sexto partido*/
    public static final int SEXTO = 5;
    /**Pone las etiquetas para el septimo partido*/
    public static final int SEPTIMO = 6;
    /**Pone las etiquetas para el septimo partido*/
    public static final int CABECERA = 7;

    /** Creates new form RecordResultSingle */
    public RecordResultSingle() {
        initComponents();
        
    }

    /**
     * Inicializa, pone el tamaño, la posicion y añade al panel todas las etiquetas
     */
    private void cargarCampos(int nume){
        //Instanciacion campos
        JLjugador1 = new JLabel();
        JLlicencia1 = new JLabel();
        JLjugador2 = new JLabel();
        JLlicencia2 = new JLabel();


        JLResultado1 = new JLabel();
        JLResultado2 = new JLabel();
        JLResultado3 = new JLabel();
        JLResultado4 = new JLabel();
        JLResultado5 = new JLabel();
        JLResultadoFinal = new JLabel();
        JLletra1 = new JLabel();
        JLletra2 = new JLabel();

        JBTNmodificar = new JButton(new ImageIcon(getClass().getResource("/img/16x16/actions/view_detailed.png")));
//        JBTNmodificar.setBorderPainted(false);
//        JBTNmodificar.setContentAreaFilled(false);
        JBTNmodificar.setActionCommand("modificar"+nume);
        JBTNmodificar.addActionListener(rl);

        //Tamaño de los campos
        JLjugador1.setBounds(new Rectangle(90, 16));
        JLlicencia1.setBounds(new Rectangle(85, 16));
        JLjugador2.setBounds(new Rectangle(90, 16));
        JLlicencia2.setBounds(new Rectangle(85, 16));

        JLResultado1.setBounds(new Rectangle(31, 16));
        JLResultado2.setBounds(new Rectangle(31, 16));
        JLResultado3.setBounds(new Rectangle(31, 16));
        JLResultado4.setBounds(new Rectangle(31, 16));
        JLResultado5.setBounds(new Rectangle(31, 16));
        JLResultadoFinal.setBounds(new Rectangle(31, 16));
        JLletra1.setBounds(new Rectangle(10, 16));
        JLletra2.setBounds(new Rectangle(10, 16));
        JBTNmodificar.setBounds(new Rectangle(16, 16));


        //Posicion de los campos
        JLletra1.setLocation(5, 1);
        JLjugador1.setLocation(18, 1);
        JLlicencia1.setLocation(113, 1);
        JLletra2.setLocation(203, 1);
        JLjugador2.setLocation(216, 1);
        JLlicencia2.setLocation(311, 1);
        JLResultado1.setLocation(401, 1);
        JLResultado2.setLocation(437, 1);
        JLResultado3.setLocation(473, 1);
        JLResultado4.setLocation(509, 1);
        JLResultado5.setLocation(545, 1);
        JLResultadoFinal.setLocation(581, 1);
        JBTNmodificar.setLocation(617, 1);

        //Se añaden al panel
        add(JLletra1);
        add(JLjugador1);
        add(JLlicencia1);
        add(JLletra2);
        add(JLjugador2);
        add(JLlicencia2);
        add(JLResultado1);
        add(JLResultado2);
        add(JLResultado3);
        add(JLResultado4);
        add(JLResultado5);
        add(JLResultadoFinal);
        add(JBTNmodificar);

    }

    public void desactivarBoton(){
        JBTNmodificar.setEnabled(false);
        JBTNmodificar.setVisible(false);
    }

    public void activarBoton(){
        JBTNmodificar.setEnabled(true);
        JBTNmodificar.setVisible(true);
    }

    /**
     * Pasado el entero del partido, coloca las letras correspondientes de los jugadores
     * @param partido
     */
    public RecordResultSingle(int partido, RecordLogic rl) {
        initComponents();
        this.rl=rl;
        cargarCampos(partido);
        
        switch (partido) {
            case 0:
                JLletra1.setText("A");
                JLletra2.setText("Y");
                break;
            case 1:
                JLletra1.setText("B");
                JLletra2.setText("X");
                break;
            case 2:
                JLletra1.setText("C");
                JLletra2.setText("Z");
                break;
            case 4:
                JLletra1.setText("A");
                JLletra2.setText("X");
                break;
            case 5:
                JLletra1.setText("C");
                JLletra2.setText("Y");
                break;
            case 6:
                JLletra1.setText("B");
                JLletra2.setText("Z");
                break;
            case 7:
                remove(JBTNmodificar);

                JLjugador1.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLjugador2.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLlicencia1.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLlicencia2.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLResultado1.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLResultado2.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLResultado3.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLResultado4.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLResultado5.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));
                JLResultadoFinal.setFont(new Font("Tahoma bold 11", Font.BOLD, 11));

                JLjugador1.setText("Jugador");
                JLjugador2.setText("Jugador");
                JLlicencia1.setText("Licencia");
                JLlicencia2.setText("Licencia");
                JLResultado1.setText("1ºJue");
                JLResultado2.setText("2ºJue");
                JLResultado3.setText("3ºJue");
                JLResultado4.setText("4ºJue");
                JLResultado5.setText("5ºJue");
                JLResultadoFinal.setText("Final");
                break;
        }
    }

    /** This method is called from within the constructor to
     * initialize the form.
     * WARNING: Do NOT modify this code. The content of this method is
     * always regenerated by the Form Editor.
     */
    @SuppressWarnings("unchecked")
    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        setBorder(javax.swing.BorderFactory.createLineBorder(new java.awt.Color(0, 0, 0)));

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(this);
        this.setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 608, Short.MAX_VALUE)
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 16, Short.MAX_VALUE)
        );
    }// </editor-fold>//GEN-END:initComponents
    // Variables declaration - do not modify//GEN-BEGIN:variables
    // End of variables declaration//GEN-END:variables

    /**
     * @return the JLResultado1
     */
    public javax.swing.JLabel getJLResultado1() {
        return JLResultado1;
    }

    /**
     * Inserta los datos en el panel
     * @param datos Array con los datos
     */
    public void setDatos(String[] datos) {
        
        JLjugador1.setText(datos[0]);
        JLlicencia1.setText(datos[1]);
        JLjugador2.setText(datos[2]);
        JLlicencia2.setText(datos[3]);
        JLResultado1.setText(datos[4]);
        JLResultado2.setText(datos[5]);
        JLResultado3.setText(datos[6]);
        JLResultado4.setText(datos[7]);
        JLResultado5.setText(datos[8]);
        JLResultadoFinal.setText(datos[9]);
        
    }
}
